package com.bawei.lookfor2204a.view.activity.login

import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.core.view.ViewCompat
import androidx.core.view.WindowInsetsCompat
import com.bawei.lookfor2204a.R
import com.bawei.lookfor2204a.base.BaseActivity
import com.bawei.lookfor2204a.databinding.ActivityLoginBinding
import com.blankj.utilcode.util.SPUtils
import com.blankj.utilcode.util.ToastUtils

/**
 * 登录页面
 */
class LoginActivity : BaseActivity<LoginViewModel, ActivityLoginBinding>(R.layout.activity_login) {

    override fun initData() {
        viewModel.loginSuccess.observe(this, {
           // ToastUtils.showShort(it.message)
            // 7)图2登录成功关闭登录页面参考图5显示我的页面并显示登录成功用户头像
            if (it.status.equals("0000")) {
                ToastUtils.showShort("登录成功！")
                SPUtils.getInstance().put("headPic", it.result.headPic)         // 在本地存储头像
                SPUtils.getInstance().put("userId", it.result.userId)           // 在本地存储用户id
                SPUtils.getInstance().put("sessionId", it.result.sessionId)     // 在本地存储SessionId
                SPUtils.getInstance().put("nickName", it.result.nickName)       // 在本地存储用户昵称
                finish()    // 关闭页面
            } else {
                ToastUtils.showShort("登录失败，用户名或密码错误")
            }
        })
    }

    override fun initView() {
        // 返回箭头点击返回上一个页面
        binding.ivBack.setOnClickListener {
            finish()
        }
        // 登录按钮点击，调用登录
        binding.btnLogin.setOnClickListener {
            val phone = binding.etPhone.text.toString() // 获取输入框中录入的手机号
            val pwd = binding.etPwd.text.toString() // 获取输入框中录入的密码

            // 4)点击图2“登录”未录入手机号提示用户录入手机号
            if (phone.isEmpty()) {
                ToastUtils.showShort("请录入手机号")
                return@setOnClickListener
            }
            // 点击图2“登录”未录入密码提示用户录入密码
            if (pwd.isEmpty()) {
                ToastUtils.showShort("请录入密码")
                return@setOnClickListener
            }

            // 6)点击图2“登录”未勾选“我已阅读并同意《用户协议》和《隐私策略》”提示用户勾选
            if (!binding.cbXieyi.isChecked) {
                ToastUtils.showShort("请勾选我已阅读并同意《用户协议》和《隐私策略》")
                return@setOnClickListener
            }

            viewModel.login(phone, pwd)
        }
    }

    override fun getViewModel() = LoginViewModel::class.java
}